#include <iostream>
using namespace std;

//typedef long long ll; 
//const int N=1010;
//ll dp[N][N];
//int n;
//
//
//int main()
//{
//	int n; cin>>n;
//	for(int i=1; i<=n; i++)
//	{
//		for(int j=1; j<=i; j++)
//		{
//			ll x; cin>>x;
//			dp[i][j]=max(dp[i-1][j], dp[i-1][j-1]) + x;	
//		} 
//	} 
//	
//	ll ret=0;
//	for(int i=1; i<=n; i++)
//	{
//		ret=max(ret, dp[n][i]);
//		
//	}
//	
//	cout<<ret<<endl;
//	return 0;
//}

typedef long long ll; 
const int N=1010;
ll dp[N];
int n;


int main()
{
	int n; cin>>n;
	for(int i=1; i<=n; i++)
	{
		for(int j=i; j>=1; j--)
		{
			ll x; cin>>x;
			dp[j]=max(dp[j], dp[j-1]) + x;
		} 
	} 
	
	ll ret=0;
	for(int i=1; i<=n; i++)
	{
		ret=max(ret, dp[i]);
		
	}
	
	cout<<ret<<endl;
	return 0;
}





















